<?php
//所谓的工厂类只是会生产关于类的工厂   而不会关心里面具体是什么   这里跟具体的对象没有任何的关系，终点就是类
//定义一个工厂类
class sqlFactory{

    public static function factory($type){
        if(is_file(dirname(__FILE__).'/Drivers/'.$type.'.php')){
                //引入数据库类型文件
                if(include_once 'Drivers/'.$type.'.php'){
                    $classname = 'Db_Adapter_'.$type;
                    return new $classname;
                }else{
                    throw new Exception('Driver not found');
                }
        }else{
            throw new Exception('Driver not found1');
        }
        
    }
}


//要调用数据的时候就可以这样写
try{
    $db = sqlFactory::factory('Mysqli');
    var_dump($db);
}catch(Exception $e){
    die($e->getMessage());
}


